#include <stdio.h>
/*
用递归函数实现汉诺塔的解，程序输入盘子数，按输出示例输出每个步骤和盘子移动的总次数。
输入示例：
3
输出示例：
1->3
1->2
3->2
1->3
2->1
2->3
1->3
7
*/
int hanoi(int n, char a, char b, char c){
    static int steps=0;
    if(n==1){
        printf("%c->%c\n",a,c);
    }
    else{
        hanoi(n-1,a,c,b);
        printf("%c->%c\n",a,c);
        hanoi(n-1,b,a,c);
    }
    steps++;
    return steps;
}
int main(){
    int n;
    scanf("%d",&n);
    int sum = hanoi(n,'1','2','3');
    printf("%d",sum);
    return 0;
}